url_(url),
url_link_text_(url_link_text)
{ }
+ UrlLink(const QString url, const QString url_link_text, const QString url_link_type) :
+ url_(url),
+ url_link_text_(url_link_text),
+ url_link_type_(url_link_type)
+ { }
QString url_;
QString url_link_text_;
+ QString url_link_type_;
};
void set_waypt_count(unsigned int nc);
void waypt_add_url(Waypoint* wpt, const QString& link,
const QString& url_link_text);
+void waypt_add_url(Waypoint* wpt, const QString& link,
+ const QString& url_link_text,
+ const QString& url_link_type);
void xcsv_setup_internal_style(const char* style_buf);
void xcsv_read_internal_style(const char* style_buf);
Waypoint* find_waypt_by_name(const QString& name);
static short_handle mkshort_handle;
static QString link_url;
static QString link_text;
+static QString link_type;
static char* snlen = NULL;
tt_wpttype_urlname, /* Not in GPX 1.1 */
tt_wpttype_link, /* New in GPX 1.1 */
tt_wpttype_link_text, /* New in GPX 1.1 */
+ tt_wpttype_link_type, /* New in GPX 1.1 */
tt_wpttype_sym,
tt_wpttype_type,
tt_wpttype_fix,
GPXWPTTYPETAG(tt_wpttype_urlname, 0, "urlname"), /* GPX 1.0 */
GPXWPTTYPETAG(tt_wpttype_link, 0, "link"), /* GPX 1.1 */
GPXWPTTYPETAG(tt_wpttype_link_text, 0, "link/text"), /* GPX 1.1 */
+ GPXWPTTYPETAG(tt_wpttype_link_type, 0, "link/type"), /* GPX 1.1 */
GPXWPTTYPETAG(tt_wpttype_sym, 0, "sym"),
GPXWPTTYPETAG(tt_wpttype_type, 1, "type"),
GPXWPTTYPETAG(tt_wpttype_fix, 0, "fix"),
link_->url_link_text_ = cdatastr;
break;
case tt_wpttype_link:
- waypt_add_url(wpt_tmp, link_url, link_text);
+ waypt_add_url(wpt_tmp, link_url, link_text, link_type);
+ link_type = QString();
link_text = QString();
link_url = QString();
break;
case tt_wpttype_link_text:
link_text = cdatastr.trimmed();
break;
+ case tt_wpttype_link_type:
+ link_type = cdatastr.trimmed();
+ break;
case tt_unknown:
end_something_else();
return;
writer->writeStartElement("link");
writer->writeAttribute("href", l.url_);
writer->writeOptionalTextElement("text", l.url_link_text_);
+ writer->writeOptionalTextElement("type", l.url_link_type_);
writer->writeEndElement();
}
return;
wpt->url_link_list_.push_back(UrlLink(link, url_link_text));
}
+void
+waypt_add_url(Waypoint* wpt, const QString& link, const QString& url_link_text, const QString& url_link_type)
+{
+ wpt->url_link_list_.push_back(UrlLink(link, url_link_text, url_link_type));
+}
+
double
gcgeodist(const double lat1, const double lon1,
const double lat2, const double lon2)